Investigating dependencies in software requirements for change propagation analysis

نویسندگان

  • He Zhang
  • Juan Li
  • Liming Zhu
  • D. Ross Jeffery
  • Yan Liu
  • Qing Wang
  • Mingshu Li
چکیده

Context: The dependencies between individual requirements have an important influence on software engineering activities e.g., project planning, architecture design, and change impact analysis. Although dozens of requirement dependency types were suggested in the literature from different points of interest, there still lacks an evaluation of the applicability of these dependency types in requirements engineering. Objective: Understanding the effect of these requirement dependencies to software engineering activities is useful but not trivial. In this study, we aimed to first investigate whether the existing dependency types are useful in practise, in particular for change propagation analysis, and then suggest improvements for dependency classification and definition. Method: We conducted a case study that evaluated the usefulness and applicability of two well-known generic dependency models covering 25 dependency types. The case study was conducted in a real-world industry project with three participants who offered different perspectives. Results: Our initial evaluation found that there exist a number of overlapping and/or ambiguous dependency types among the current models; five dependency types are particularly useful in change propagation analysis; and practitioners with different backgrounds possess various viewpoints on change propagation. To improve the state-of-the-art, a new dependency model is proposed to tackle the problems identified from the case study and the related literature. The new model classifies dependencies into intrinsic and additional dependencies on the top level, and suggests nine dependency types with precise definitions as its initial set. Conclusions: Our case study provides insights into requirement dependencies and their effects on change propagation analysis for both research and practise. The resulting new dependency model needs further evaluation and improvement.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Dependency based Technique for Identifying the Ripple Effect of Requirements Evolution

Requirements evolve continuously and inevitably. In order to effectively manage requirements change, an understanding from a quantitative perspective is needed in determining the extent of the propagation of the requirements as they evolve. In this paper, we first look back at the impact analysis in the software life cycle and give an overview of requirements dependencies. We present a generic ...

متن کامل

A Business Process-Driven Approach for Requirements Dependency Analysis

Dependencies among software artifacts are very useful for various software development and maintenance activities such as change impact analysis and effort estimation. In the past, the focus on artifact dependencies has been at the design and code level rather than at the requirements level. This is due to the difficulties in identifying dependencies in a text-based requirements specification. ...

متن کامل

Hidden Dependencies in Program Comprehension and Change Propagation

Large software systems are difficult to understand and maintain. Program dependency analysis plays a key role in both understanding and maintenance. This paper discusses hidden dependencies among software components that make both understanding and maintenance hard. Hidden dependency is a relationship between two seemingly independent components and it is caused by a data flow inside of a third...

متن کامل

Change Impact Analysis of Crosscutting in Software Architectural Design

Software architectures should be amenable to changes in user requirements and implementation technology. The analysis of the impact of these changes can be based on traceability of architectural design elements. Design elements have dependencies with other software artifacts but also evolve in time. Crosscutting dependencies may have a strong influence on modifiability of software architectures...

متن کامل

Agility Evaluation for Component-based Software Systems

Frequent modifications on component-based software systems are required to accommodate to the rapid changes of external requirements, and the ability of agilely adapt to changes is considered as an important metrics for these systems. Aiming at this problem, our main concern is to present an agility evaluation method for component-based systems. In this method, interior structure of a component...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Information & Software Technology

دوره 56  شماره 

صفحات  -

تاریخ انتشار 2014